#ifndef QCOMMONSTRUCT_H
#define QCOMMONSTRUCT_H

#include "shared_global.h"

#include <QString>
#include <QVariant>
#include <QGradient>
#include <QPointF>

struct SHARED_SHARED_EXPORT tagComboItem
{
    QString     m_text;
    QString     m_icon;
    QVariant    m_value;
    bool operator ==(const tagComboItem &item)
    {
        return (m_value==item.m_value);
    }
};

typedef QList<tagComboItem> ComboItems;
Q_DECLARE_METATYPE(ComboItems)


class SHARED_SHARED_EXPORT tagMemeryValueInfo
{
public:
    QString     m_propertyName;
    QString     m_valueGroup;
    QString     m_valueName;
    QString     m_script;
    bool operator ==(const tagMemeryValueInfo &info)
    {
        return (info.m_propertyName==m_propertyName
                && info.m_valueName==m_valueName
                && info.m_script==m_script
                && info.m_valueGroup==m_valueGroup);
    }
};
typedef QList<tagMemeryValueInfo> MemeryValueItems;
Q_DECLARE_METATYPE(MemeryValueItems)

struct SHARED_SHARED_EXPORT tagComboBox
{
    QString     m_text;
    QString     m_icon;

    bool operator ==(const tagComboBox &item)
    {
        return (m_text==item.m_text && m_icon==item.m_icon);
    }
};

typedef QList<tagComboBox> ComboBoxItems;
Q_DECLARE_METATYPE(ComboBoxItems)

Q_DECLARE_METATYPE(QGradient)

typedef QList<QPointF>   QPointFs;
Q_DECLARE_METATYPE(QPointFs)

#endif // QCOMMONSTRUCT_H
